package com.studyweb.pojo.entity;

import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;

/**
 * 试卷分值实体类
 */
public class PaperScore {
    // 主键ID
    private Long id;
    
    // 考试名称
    private String examName;
    
    // 科目
    private String subject;
    
    // 总题量
    private Integer totalQuestions;
    
    // 总分值
    private BigDecimal totalScore;
    
    // 总时长(分钟)
    private Integer totalTime;
    
    // 创建时间
    private LocalDateTime createTime;
    
    // 更新时间
    private LocalDateTime updateTime;
    
    // 试卷分值详情列表
    private List<PaperScoreDetail> details;

    // 构造函数
    public PaperScore() {}

    public PaperScore(Long id, String examName, String subject, Integer totalQuestions, 
                     BigDecimal totalScore, Integer totalTime, LocalDateTime createTime, 
                     LocalDateTime updateTime) {
        this.id = id;
        this.examName = examName;
        this.subject = subject;
        this.totalQuestions = totalQuestions;
        this.totalScore = totalScore;
        this.totalTime = totalTime;
        this.createTime = createTime;
        this.updateTime = updateTime;
    }

    // Getter和Setter方法
    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getExamName() {
        return examName;
    }

    public void setExamName(String examName) {
        this.examName = examName;
    }

    public String getSubject() {
        return subject;
    }

    public void setSubject(String subject) {
        this.subject = subject;
    }

    public Integer getTotalQuestions() {
        return totalQuestions;
    }

    public void setTotalQuestions(Integer totalQuestions) {
        this.totalQuestions = totalQuestions;
    }

    public BigDecimal getTotalScore() {
        return totalScore;
    }

    public void setTotalScore(BigDecimal totalScore) {
        this.totalScore = totalScore;
    }

    public Integer getTotalTime() {
        return totalTime;
    }

    public void setTotalTime(Integer totalTime) {
        this.totalTime = totalTime;
    }

    public LocalDateTime getCreateTime() {
        return createTime;
    }

    public void setCreateTime(LocalDateTime createTime) {
        this.createTime = createTime;
    }

    public LocalDateTime getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(LocalDateTime updateTime) {
        this.updateTime = updateTime;
    }

    public List<PaperScoreDetail> getDetails() {
        return details;
    }

    public void setDetails(List<PaperScoreDetail> details) {
        this.details = details;
    }

    @Override
    public String toString() {
        return "PaperScore{" +
                "id=" + id +
                ", examName='" + examName + '\'' +
                ", subject='" + subject + '\'' +
                ", totalQuestions=" + totalQuestions +
                ", totalScore=" + totalScore +
                ", totalTime=" + totalTime +
                ", createTime=" + createTime +
                ", updateTime=" + updateTime +
                ", details=" + details +
                '}';
    }
}